package cc.mcggdd.leah.boot.stock.mapper;

import cc.mcggdd.leah.boot.stock.model.query.StockTransferStatisticQuery;
import cc.mcggdd.leah.boot.stock.model.vo.StockTransferMonthRollupVO;
import cc.mcggdd.leah.boot.stock.model.vo.StockTransferStatisticVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cc.mcggdd.leah.boot.stock.model.entity.StockTransfer;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import cc.mcggdd.leah.boot.stock.model.query.StockTransferQuery;
import cc.mcggdd.leah.boot.stock.model.vo.StockTransferVO;
import org.apache.ibatis.annotations.Mapper;

import java.math.BigDecimal;
import java.util.List;

/**
 * 银证转账Mapper接口
 *
 * @author zifeng
 * @since 2025-02-07 10:03
 */
@Mapper
public interface StockTransferMapper extends BaseMapper<StockTransfer> {

    /**
     * 获取银证转账分页数据
     *
     * @param page 分页对象
     * @param queryParams 查询参数
     * @return
     */
    Page<StockTransferVO> getStockTransferPage(Page<StockTransferVO> page, StockTransferQuery queryParams);
    
    List<StockTransferMonthRollupVO> getStockTransferMonthRollup(StockTransferStatisticQuery queryStatisticParams);
    StockTransferStatisticVO getStockTransferStatistic(StockTransferStatisticQuery queryStatisticParams);

    BigDecimal getStockTransferTotalAmount();
}
